package com.easpeed.comon.utils

import java.lang.reflect.ParameterizedType
import java.lang.reflect.Type

/**
 * Created by bigyu on 2023/3/20 17:57
 * com.ww.databaselibrary.utils
 */
class ParameterizedTypeImpl internal constructor(
    private val raw: Class<*>, args: Array<Type>,
) : ParameterizedType {
    private val args: Array<Type>

    init {
        this.args = args
    }

    override fun getActualTypeArguments(): Array<Type> {
        return args.clone();
    }

    override fun getRawType(): Type {
        return raw;
    }

    override fun getOwnerType(): Type? {
        return null;
    }
}